perm filename N[LSP,BGB] blob
sn#032381 filedate 1973-04-07 generic text, type T, neo UTF8
00100
00200 DEFINE LEFT $(NAM,WRD,Z){
00300 IFIDN<><Z><DEFINE NAM(A,Q)<CAR A,WRD(Q)>>
00400 IFDIF<><Z><DEFINE NAM(A,Q)<NIP A,WRD(Q)>>
00500 DEFINE NAM$.(A,Q)<DIP A,WRD(Q)>}
00600
00700 DEFINE RIGHT $(NAM,WRD,Z){
00800 IFIDN<><Z><DEFINE NAM(A,Q)<CDR A,WRD(Q)>>
00900 IFDIF<><Z><DEFINE NAM(A,Q)<NAP A,WRD(Q)>>
01000 DEFINE NAM$.(A,Q)<DAP A,WRD(Q)>}
01100
01200 ;DEFINE GEM LINK NAMES.
01300
01400 LEFT(X1DC,-3,N)↔ RIGHT(Y1DC,-3,N)
01500 LEFT(X2DC,-2,N)↔ RIGHT(Y2DC,-2,N)
01600 LEFT(TYPE,0)
01700 DEFINE $TYPE(Q,E)<LDB Q,[POINT 4,(E),35]>
01800 LEFT(NFACE,1)↔ RIGHT(PFACE,1)
01900 DEFINE XDC (Q,E)<HLLE Q,1(E)>↔DEFINE YDC (Q,E)<HRLE Q,1(E)>
02000 DEFINE XDC.(Q,E)<HLLM Q,1(E)>↔DEFINE YDC.(Q,E)<HLRM Q,1(E)>
02100 LEFT(NED,2)↔ RIGHT(PED,2)
02200 LEFT(NCNT,2,N)
02300 LEFT(NVT,3)↔ RIGHT(PVT,3)
02400 LEFT(NCW,4)↔ RIGHT(PCW,4)
02500 LEFT(DAD,4)↔ RIGHT(SON,4)
02600 LEFT(NCCW,5)↔ RIGHT(PCCW,5)
02700 LEFT(BRO,5)↔ RIGHT(SIS,5)
02800 LEFT(ALT,6)↔ RIGHT(ALT2,6)
02900 RIGHT(FRAME,6)↔ RIGHT(POTEN,6)
03000 LEFT(CW,7)↔ RIGHT(CCW,7)
00100 ; NAMES OF NODE DATA WORDS.
00200
00300 ↓AA ←← ↓XWC ←← -3
00400 ↓BB ←← ↓YWC ←← -2
00500 ↓CC ←← ↓ZWC ←← -1
00600
00700 ↓QQ ←← 7
00800 ↓KK ←← 3
00900
01000 ↓XPP ←← 4↔ ↓YPP ←← 5↔ ↓ZPP ←← 6
01100 ↓IX←←0↔ ↓IY←←1↔ ↓IZ←←2
01200 ↓JX←←3↔ ↓JY←←4↔ ↓JZ←←5
01300 ↓KX←←6↔ ↓KY←←7↔ ↓KZ←←8
01400
01500 ;NODE SERIAL TYPE NUMBERS.
01600
01700 ↓$FRAME ←← 0
01800 ↓$EMPTY ←← 1
01900 ↓$UNIVERSE ←← 2
02000 ↓$SUN ←← 3
02100
02200 ↓$CAMERA ←← 4
02300 ↓$WORLD ←← 5
02400 ↓$WINDOW ←← 6
02500 ↓$IMAGE ←← 7
02600
02700 ↓$TEXT ←← 10
02800 ↓$XNODE ←← 11
02900 ↓$YNODE ←← 12
03000 ↓$ZNODE ←← 13
03100
03200 ↓$BODY ←← 14
03300 ↓$FACE ←← 15
03400 ↓$EDGE ←← 16
03500 ↓$VERT ←← 17
00100 ;TYPE BIT OPERATIONS.
00200
00300 DEFINE MARK(Q,BITS){
00400 IFE BITS⊗-22,{LACI BITS}
00500 IFN BITS⊗-22,{SLACI(BITS)}
00600 IORM(Q)}
00700
00800 DEFINE MARKZ(Q,BITS){
00900 IFE BITS⊗-22,{LACI BITS}
01000 IFN BITS⊗-22,{SLACI(BITS)}
01100 ANDCAM (Q)}
01200
01300 DEFINE TEST(Q,BITS){
01400 LAC(Q)
01500 IFE BITS⊗-22,{TRNN BITS }
01600 IFN BITS⊗-22,{TLNN(BITS)}}
01700
01800 DEFINE TESTZ(Q,BITS){
01900 LAC(Q)
02000 IFE BITS⊗-22,{TRNE BITS }
02100 IFN BITS⊗-22,{TLNE(BITS)}}
02200
00100 ;PROPERTY-TYPE BITS.
00200 ↓PBIT ←← 1B30 ;PART.
00300 ↓BBIT ←← 1B17
00400 ↓FBIT ←← 1B16
00500 ↓EBIT ←← 1B15
00600 ↓VBIT ←← 1B14
00700
00800 ↓PZZ ←← 1B1
00900 ↓NZZ ←← 1B10
01000
01100 ↓FOLDED ←← 1B11
01200 ↓VISIBLE ←← 1B12
01300 ↓POTENT ←← 1B13
01400 ↓DARKEN ←← 1B3
01500
01600 ↓NORTH ←← 1B5
01700 ↓SOUTH ←← 1B6
01800 ↓EAST ←← 1B7
01900 ↓WEST ←← 1B8
02000 ↓NSEW ←← 17B8
02100
02200 ↓JUTBIT ←← 1B3
02300 ↓JOTBIT ←← 1B4
02400 DEFINE HIDE(Q){
02500 SLACI(3B13)↔ANDCAM(Q)}
02600
02700 ↓TMPBIT ←← 1B2
02800 ↓BDLBIT ←← 1B1 ;BODY OPERATION DISABLE LOCOR ACTION.
02900 ↓BDVBIT ←← 1B3 ;BODY OPERATION DISABLE VERTEX ACTION.
03000 ↓BDPBIT ←← 1B4 ;BODY OPERATION DISABLE PARTS ACTION.
03100
03200 ↓TXTBIT ←← 1B24 ;TEXT VERTEX.